import type { TData } from '@/views/Base/WorkCalendar/common';
import type { copyType } from '@/views/Base/WorkCalendar/view/ShiftSystem/type';
import type { WorkshopAddDataType } from '@/views/Base/Workshop/type';
import type { WorkingProcedure } from '@/api/procedure//model/type';
import type { WorkshopRecords } from '@/api/base/workshop/model/type';
import type { AuxiliaryData } from '@/api/modeling/auxiliaryResources/model/type';
import type { MaterialListInfo } from '@/api/base/materialsManagement/model/type';
import type { OrderListRecord } from '@/api/demand/order/model/type';
import type { CustomerInformationListInfo } from '@/api/base/customerInformation/model/type';
import type { UserVO } from '@/api/setting/memberManagement/model/type';

export interface TableData<T> {
    tableData: T;
    update: boolean;
}
/**
 * @: addDataStore
 */
export interface AddData {
    workingHoursAddData?: TableData<Partial<TData>[]>; // 工作时段
    classSystemAddData?: copyType; // 班制
    supplerAddData?: { update: boolean; id: string }; // 供应商
    workshopAddData?: TableData<Partial<WorkshopAddDataType>[]>; // 车间
    procedureAddData?: TableData<Partial<WorkingProcedure>[]>; // 工序
    equipmentAddData?: TableData<Partial<WorkshopRecords>[]>; // 设备
    orderAddData?: TableData<Partial<OrderListRecord>[]>; // 需求订单
    auxiliaryResourcesAddData?: TableData<Partial<AuxiliaryData>[]>; // 辅助资源
    materialsManagementAddData?: TableData<Partial<MaterialListInfo>[]>; // 物料管理
    roleManagementAddData?: { update: boolean; id: string }; // 角色管理
    customerAddData?: TableData<Partial<CustomerInformationListInfo>[]>; // 客户信息
    memberAddData?: TableData<Partial<UserVO>[]>; // 成员
    bomAddData?: { update: boolean; id: string | number }; // bom
    processAddData?: { update: boolean; id: number }; // 工艺路线
}
